package opencv.service;

import java.awt.Image;

import com.googlecode.javacv.jna.cxcore.IplImage;

/**
 * @author Aakash Polra
 */
public interface Algorithm {

	/**
	 * This method should not make any changes into any of these IplImage objects.
	 * If it needs to, it can copy an IplImage into its own copy and manage it itself
	 * 
	 * @param img1	last frame
	 * @param img2	current frame
	 */
	public void run(IplImage img1, IplImage img2);
	
	/**
	 * Called when an image for debug is prepared
	 * @param image	debug image
	 */
	void onDebugImagePrepared(Image image);
}
